import Toast from './Toast.vue'

export default {
  install (Vue) {
    // 往body添加一个子节点, 也就是toast的模板(这里有问题)
    // document.body.appendChild(Toast.$el) // Toast.$el 为 undefined

    // TODO: 很重要
    // 1-创建组件构造器
    let ToastConstructor = Vue.extend(Toast)

    // 2-new的方式,根据组件构造器,可以创建出来一个组件对象
    let toast = new ToastConstructor()

    // 3-将组件对象以手动的方式挂载到某一元素上
    toast.$mount(document.createElement('div'))

    // 4-toast.$el对应的就是上面的div, 往body上添加这个子节点
    document.body.appendChild(toast.$el)

    // 5-往Vue原型链上添加一个对象, 这个对象就是已将创建好的toast
    Vue.prototype.$Toast = toast
  }
}
